package com.yunwushanhe.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.yunwushanhe.bean.req.*;
import com.yunwushanhe.bean.ret.ResponseResult;
import com.yunwushanhe.bean.vo.PageVO;
import com.yunwushanhe.bean.vo.UserPageListVO;
import com.yunwushanhe.bean.vo.UserUpdateVO;
import com.yunwushanhe.entity.User;

import java.util.List;

/**
 * @Author 抬头看看天
 * @Date 2023-08-22  16:47:06
 */
public interface AdminUserService extends IService<User> {

    ResponseResult<Object> adminLogin(UserLoginReq userLoginReq);

    ResponseResult<Object> adminLogout();

    ResponseResult<PageVO<List<UserPageListVO>>> getUserPageList(UserPageListReq userPageListReq);

    ResponseResult<Object> addUser(UserAddReq userAddReq);

    ResponseResult<Object> deleteUserById(String id);

    ResponseResult<UserUpdateVO> getUserById(Long id);

    ResponseResult<Object> updateUserById(UserUpdateReq userUpdateReq);

    ResponseResult<Object> changeUserStatus(UserStatusUpdateReq userStatusUpdateReq);
}
